home *** CD-ROM | disk | FTP | other *** search
/ Directorty Opus 5 - Magellan 2 / Opus 5 - Magellan 2.iso / Extras / Install-O55CD / InstallOpus next >
Text File  |  1996-09-30  |  42KB  |  1,534 lines

  1. ; Script to install Directory Opus version 5.5 (alternative version)
  2. ;
  3. ; Directory Opus Install Version $VER: Install-Opus 5.5a  (01.10.96)
  4. ; COPYRIGHT ©1996 GP SOFTWARE, AUSTRALIA
  5. ; note uses Opus<Alt-Shift>5
  6. ; now installs new catalogs if they are on the disk.
  7.  
  8.  
  9. (onerror
  10.     (makeassign "DOPUSDEST" (safe))    
  11. )
  12.  
  13. (complete 0)
  14.  
  15. ;
  16. ;check user has Dos 2
  17. ;
  18.  
  19. (set #DOSTYPE (/ (getversion) 65536))
  20. (if
  21.     (NOT (>= #DOSTYPE 37))
  22.      (abort "Directory Opus 5 benötigt AmigaDOS 2.04 oder höher."
  23.         " Bevor Sie Opus 5 benutzen können, müssen Sie auf V2.04 oder höher upgraden.")
  24. )
  25.  
  26.  
  27. (set @default-dest "Work:")
  28.  
  29. (set #Dopus_prog "DOpus5:DirectoryOpus")
  30. (set #Loadwb "C:LoadWb")
  31. (set #Loadwb_old "C:LoadWb_old")
  32. (set #Has_loadwb_old 0)
  33. (set #Has_loaddb 0)
  34. (set #Inst_choice 0)
  35. (set #HB_choice 0)
  36. (set #Changed 0)
  37. (set #Inst_core 0)
  38.  
  39. (set #DName1 "Opus5.5")
  40. (set #DName2 "Opus5.5")
  41. (set #Disk1_Name (cat #DName1 ":"))
  42. (set #Disk2_Name (cat #DName2 ":"))
  43. (set #TLArchive    "MWB_DOpus8c.lha")
  44. (set #CatalogFiles "CatFiles.lha")
  45. (set #Is_update 0)
  46.  
  47. (set #DOpus_Dest (getassign "DOpus5" "a"))
  48. (set #O_DOpus_Dest (getassign "DOpus5" "a"))
  49. (set #Go "Weiter")
  50. (set #Skip "Diesen Teil überspringen")
  51.  
  52.  
  53.  
  54. ;
  55. ; Procedure signal
  56. ; in case Opus is re-installed. The notification on the modules
  57. ; directory can cause problems so signal Opus to turn off notifications
  58.  
  59. (procedure signal_opus
  60.  
  61.     (set #Want_disk 1)
  62.     (get_disk)
  63.     (set #Sigs (tackon #Disk1_Name "dopusmsg"))
  64.     (if (exists #Sigs (noreq))
  65.         (run (cat #Sigs " DOPUS.1 \"command set notify off\""))
  66.     )
  67. )
  68.  
  69.  
  70. ;
  71. ; Procedure check_lha 
  72. ;
  73.  
  74.  
  75. (procedure check_lha
  76.  
  77.     (set #Title_msg "FEHLER: Problem mit LHA.\n\n")
  78.  
  79.     (if ( = (exists "c:lha" (noreq)) 0)
  80.         (
  81.         (message #Title_msg
  82.             "LHA befindet sich nicht im C:-Verzeichnis Ihres Systems.\n\n"
  83.                "Ohne LHA ist die Installation nicht durchführbar. Wollen"
  84.                " Sie die Installation dennoch fortsetzen ?\n\n"
  85.                "(Es werden Fehler auftreten, die letztendlich zum Abbruch führen!"
  86.                " Bitte installieren Sie zuerst LHA in Ihrem Befehlspfad,"
  87.                " vorzugsweise im Verzeichnis C:, und brechen Sie die"
  88.                " Installation an dieser Stelle vorerst ab.)")
  89.         )
  90.     )
  91. )
  92.  
  93. ;
  94. ; Procedure get_disk 
  95. ; get the correct disk for a program
  96. ;
  97.  
  98. (procedure get_disk
  99.  
  100.     (if (= #Want_disk 1)
  101.         (set #DiskName #DName1)
  102.         (set #DiskName #DName2)
  103.     )
  104.     (askdisk
  105.         (prompt #Title_msg
  106.             "\nBitte legen Sie die CD \""#DiskName"\" ein.")
  107.         (help "Legen Sie die CD ein, um die Installation fortzusetzen.")
  108.         (assigns)
  109.         (dest #DiskName)
  110.     )
  111.     (set #Current_disk #Want_disk)
  112. )
  113.  
  114. ;
  115. ; Procedure install_arexx  ;
  116. ; From Leo Davidson collection.
  117. ;
  118.  
  119. (procedure install_arexx
  120.  
  121.     (set #Title_msg "Installation des ARexx-Archivs.\n\n")
  122.     (if     (askbool (prompt #Title_msg
  123.                 "Wir haben ein Archiv mit ARexx-Skripten und weiteren Daten für Opus von "
  124.                 "verschiedenen Benutzern beigelegt. Die meisten Skripte erfordern eine "
  125.                 "weitere Installation nach Ablauf dieses Skriptes.\n\n"
  126.                 "Wollen Sie die ARexx-Archive installieren?\n")
  127.             (help "Ja, tun Sie's! Die sind großartig!")
  128.         )
  129.         (
  130.         (set #Changed 1)
  131.         (set #Want_disk 2)
  132.         (get_disk)
  133.         (if    (> (+ (database "total-mem")) 1000000)
  134.             (
  135.             (working #Title_msg
  136.                 "Kopiere Dateien.")
  137.             (copyfiles (source (tackon #Disk2_Name "ARexx.lha")) (dest "ram:"))
  138.             (set #SRC "ram:")
  139.             )
  140.             (set #SRC #Disk2_Name)
  141.         )
  142.         (working #Title_msg
  143.             "Dearchiviere und installiere ARexx-Skripte.\n\n"
  144.             "Ein wenig Geduld...\n\n"
  145.             "Das dauert nicht lang.")
  146.             
  147.         (run (cat "lha >NIL: <NIL: -q x "#SRC"ARexx.lha DOPUSDEST:"))
  148.         (delete "ram:ARexx.lha" (safe))
  149.         (run "c:protect DOPUSDEST:ARexx/#? +s")
  150.  
  151.         (message #Title_msg
  152.             "Die ARexx-Skripte sind installiert. Lesen Sie bitte "
  153.             "den Anfang der Skriptdateien für Informationen über "
  154.             "deren Funktion und die Benutzung.\n\n"
  155.             "Die Skripte sind in \"DOpus5:Arexx\", weitere Zusatzmodule sind in "
  156.             "\"DOpus5:Storage/Modules\", und einige der Zusätze haben AmigaGuides "
  157.             "die in \"DOpus5:Help\" sind. Es befinden sich außerdem einige neue "
  158.             "Piktogramme in \"DOpus5:Icons\".\n"
  159.             "\nZur Aktivierung der Module müssen Sie diese nach \"DOpus5:Modules\" "
  160.             "verschieben und Opus neustarten."
  161.         )
  162.         )
  163.     )
  164. )
  165.  
  166. ;
  167. ; Procedure install_mwbextras ;
  168. ; MWB_DOpus_8_Install 1.0 (11.8.96)
  169. ; Install originally written by Leo Davidson.
  170. ;
  171.  
  172. (procedure install_mwbextras
  173.  
  174.     (set #Title_msg "MWB_DOpus V8.0 Installation.\n\n")
  175.     ;- Introductory message 
  176.  
  177.     (if    (askbool (prompt #Title_msg
  178.                 "Entwickelt von Trevor Morris and Leo Davidson\n\n"
  179.                 "MagicWorkbench Toolbarpiktogramme und Hintergründe "
  180.                 "für Directory Opus 5.5 (und andere Programme).\n\n"
  181.                 "Diese bieten ein hübsches Set von Bildern für "
  182.                 "Werkzeugleiste und Piktogramme, ob mit oder ohne MagicWorkbench."
  183.                 "\n\nWollen Sie diese in Ihrem System installieren?")
  184.             (help "Ja, tun Sie's! Die sind großartig!")
  185.         )
  186.         (
  187.         (set #Changed 1)
  188.         (set #Want_disk 2)
  189.         (get_disk)
  190.         (if    (> (+ (database "total-mem")) 1000000)
  191.             (
  192.             (working #Title_msg
  193.                 "Kopiere Dateien.")
  194.             (copyfiles (source (tackon #Disk2_Name #TLArchive)) (dest "ram:"))
  195.             (set #SRC "ram:")
  196.             )
  197.             (set #SRC #Disk2_Name)
  198.         )
  199.         (working #Title_msg
  200.             "Entpacke das MWB-Archiv.\n\n"
  201.             "Schon mal ans Schachspielen gedacht?....\n\n"
  202.             "Ähh, wäre ein \"Power\"-Amiga nicht klasse!")
  203.         (run (cat "lha >NIL: <NIL: -q x "(tackon #SRC #TLArchive)" ram:"))
  204.         (delete (tackon "ram:" #TLArchive) (safe))
  205.  
  206.         (run "cd ram:MWB8")
  207.  
  208.     ;- Set where to do the install to
  209.  
  210.         (set #Target "DOPUSDEST:")
  211.  
  212.     
  213.     ;- Back-up the old Images drawer (if exists) and copy new images
  214.  
  215.         (if (= (exists "DOPUSDEST:Images" (noreq)) 2) 
  216.             (
  217.             (set #Tmp_msg "\n\nIhr altes Verzeichnis \"Images\" kann vor der Installation der neuen Bilder gesichert werden.")
  218.             (set images_exist 1)
  219.             )
  220.             (
  221.             (set #Tmp_msg " ")
  222.             (set images_exist 0)
  223.             )
  224.         )
  225.  
  226.         (if     (askbool (prompt #Title_msg
  227.                     "Die neuen Werkzeugleistenbilder werden"
  228.                     " ins Verzeichnis \"Dopus5:Images\" kopiert."
  229.                     #Tmp_msg)
  230.                 (choices #Go #Skip)
  231.                 (default 1)
  232.                 (help "Dieser Teil installiert alle Werkzeugleistenbilder.")
  233.             )
  234.             ( ; yes 
  235.             (if images_exist
  236.                 (
  237.                 (set #Bkup 1)
  238.                 (set #New_name (cat "Images" #Bkup))
  239.                 (while     (= (exists (cat "DOPUSDEST:" #New_name) (noreq)) 2)
  240.                     (
  241.                     (set #Bkup (+ #Bkup 1))
  242.                     (set #New_name (cat "Images" #Bkup))
  243.                     )
  244.                 )
  245.                 (if     (askbool (prompt #Title_msg
  246.                         "Wollen Sie Ihr aktuelles Verzeichnis"
  247.                         " \"Images\" sichern oder es mit den"
  248.                         " neuen Bildern überschreiben?\n\n"
  249.                         "Ihr altes Verzeichnis würde gesichert als "#New_name".")
  250.                     (choices "Ja - Sichern" "Nein - Überschreiben")
  251.                     (default 1)
  252.                     (help "Im Zweifelsfall wählen Sie Ja.")
  253.                     )
  254.                     (; backup Images
  255.                     (rename (tackon #Target "Images") (tackon #Target #New_name))
  256.                     )
  257.                 )
  258.                 )
  259.             )
  260.  
  261.             (copyfiles
  262.                 (source "ram:MWB8/Images")
  263.                 (dest (tackon #Target "Images"))
  264.                 (all)
  265.                 (optional force)
  266.                 )
  267.             )
  268.         )
  269.  
  270.     ;- Copy the Colours guide
  271.     
  272.         (if    (askbool (prompt #Title_msg
  273.                     "Wir haben auch einige einfache Abkürzungen"
  274.                     " beigepackt, die Ihnen ein schnelles Einstellen der MagicWorkbench-Farben erlauben.\n\n"
  275.                     "Wollen Sie dieses \"Colours\"-Verzeichnis installieren?")
  276.                 (default 1)
  277.                 (help "Dieser Teil installiert das MWB-Farben-Verzeichnis.")
  278.             )
  279.             (copyfiles
  280.                 (source "ram:MWB8/Colors")
  281.                 (dest (tackon #Target "Colors"))
  282.                 (all)
  283.                 (infos)
  284.                 (optional force)
  285.             )
  286.         )
  287.             
  288.     ;- Copy the new icons (for programs, files, etc)
  289.     
  290.         (if    (askbool (prompt #Title_msg
  291.                     "Die alten DOpus5-Dateipiktogramme werden nun ersetzt "
  292.                     "durch MagicWorkbench-Versionen.\n\n"
  293.                     "Wichtig: Für den Fall, daß Sie einige Tooltypes im "
  294.                     "Hauptpiktogramm von DirectoryOpus geändert haben, bleibt dies ungeändert. "
  295.                     "Sie sollten dies manuell installieren, wie es in der Hilfsdatei "
  296.                     "beschrieben ist, die später noch installiert wird.")
  297.                 (choices #Go #Skip)
  298.                 (default 1)
  299.                 (help "Dieser Teil installiert alle Programm- und Dateipiktogramme.")
  300.             )
  301.             (copyfiles 
  302.                 (source "ram:MWB8/DOpus_Icons")
  303.                 (dest #Target)
  304.                 (all)
  305.                 (optional force)
  306.             )
  307.         )
  308.     
  309.     ;- Copy the Help guide
  310.     
  311.         (if    (askbool (prompt #Title_msg
  312.                     "Eine AmigaGuide-Datei über MWB_DOpus 8, inklusive Tips und Tricks "
  313.                     "wird ins Verzeichnis \"DOpus5:Help\" kopiert.")
  314.                 (choices #Go #Skip)
  315.                 (default 1)
  316.                 (help "Dieser Teil installiert die Hilfsdatei.")
  317.             )
  318.             (copyfiles
  319.                 (source "ram:MWB8/Help/MWB_DOpus8_Help.guide")
  320.                 (dest (tackon #Target "Help"))
  321.                 (infos)
  322.                 (optional force)
  323.             )
  324.         )
  325.     
  326.     ;- Copy the fonts 
  327.     
  328.         (if    (askbool (prompt #Title_msg
  329.                     "Einige Zusatzzeichensätze werden ins Verzeichnis \"Fonts:\" kopiert.\n"
  330.                     "Diese sind zur Nutzung von MWB_DOpus nicht zwingend notwendig.\n\n"
  331.                     "Die Zeichensätze sind:\n"
  332.                     "\"P0T-NOoDLE\",\n"
  333.                     "\"P0T-Prop\",\n"
  334.                     "\"PolarSmall\", and,\n"
  335.                     "\"PolarSmall-Prop\".")
  336.                 (choices #Go #Skip)
  337.                 (default 1)
  338.                 (help "Dieser Teil installiert einige Zusatzzeichensätze.")
  339.             )
  340.             (copyfiles
  341.                 (source "ram:MWB8/Fonts")
  342.                 (dest "Fonts:")
  343.                 (all)
  344.                 (optional force)
  345.             )
  346.         )
  347.     
  348.     ;- Copy the backdrops (ask where first) 
  349.     
  350.         (if    (askbool (prompt #Title_msg
  351.                     "Wollen Sie die Hintergrundbilder installieren?\n")
  352.                 (default 1)
  353.                 (help "Dieser Teil installiert einige Hintergrundbilder.")
  354.             )
  355.             (copyfiles
  356.                 (source "ram:MWB8/Backdrops")
  357.                 (dest (askdir (prompt "Wählen Sie für die Hintergründe einen Installationsort.")
  358.                      (help @askdir-help)
  359.                      (default "Sys:Prefs/Presets")
  360.                     )    
  361.                 )
  362.                 (all)
  363.                 (optional force)
  364.             )
  365.         )
  366.     
  367.     ;- Copy the Index files (ask where first) 
  368.     
  369.         (if    (askbool (prompt #Title_msg
  370.                     "Wollen Sie das Index-Bild installieren?\n\n"
  371.                     "Es erleichtert das Auffinden bestimmter Piktogramme"
  372.                     " in dieser Sammlung.\n\n"
  373.                     "Das Bild wird installiert in \"Dopus5:Help\"")
  374.                 (default 1)
  375.                 (help "Dieser Teil installiert das Index-Bild. Tun Sie's!")
  376.             )
  377.             (copyfiles
  378.                 (source "ram:MWB8/Index")
  379.                 (dest (tackon #Target "Help"))
  380.                 (infos)
  381.                 (all)
  382.                 (optional force)
  383.             )
  384.         )
  385.     
  386.     ;- Copy the Disk icons (ask where first)
  387.     
  388.         (if    (askbool (prompt #Title_msg
  389.                 "Wollen Sie einige Diskpiktogramme installieren?\n"
  390.                 " Sie können mit diesen die bestehenden Diskpiktogramme"
  391.                 " ersetzen, wenn Sie dies wünschen.\n\n"
  392.                 "Sie müssen diese Ersetzungen allerdings selbst mit "
  393.                 "IconEdit (von der Workbench) oder MUIReIcon "
  394.                 "(vom Aminet) durchführen.")
  395.             (default 1)
  396.             (help "Dieser Teil installiert einige Diskpiktogramme.\n"
  397.                 "Ihre bestehenden Piktogramme werden nicht ersetzt.")
  398.             )
  399.             (copyfiles
  400.                 (source "ram:MWB8/Disk_Icons")
  401.                 (dest (askdir (prompt "Wo wollen Sie die Diskpiktogramme "
  402.                          "installieren:")
  403.                      (help @askdir-help)
  404.                      (default "sys:prefs/presets")
  405.                     )    
  406.                 )
  407.                 (all)
  408.                 (optional force)
  409.             )
  410.         )
  411.  
  412.  
  413.         (message #Title_msg
  414.             "Installation durchgeführt!\n\n"
  415.             "Lesen Sie in jedem Fall die Hilfsdatei in"
  416.             " \"DOpus5:Help\" für weitere Informationen. Dort erfahren Sie auch,"
  417.             " wie die MagicWorkbench-Farben eingestellt werden usw.")
  418.  
  419.     ; tidy up
  420.  
  421.         (working #Title_msg
  422.             "Räume auf nach der MWB_DOpus V8.0 Installation")
  423.         (run "cd ram:")
  424.         (run "delete ram:MWB8#? all")
  425.         )
  426.     )
  427. )
  428.  
  429.  
  430. ;
  431. ; Procedure install_support  ;
  432. ; add the extra non-program bits
  433. ;
  434.  
  435. (procedure install_support
  436.  
  437.     (set #Title_msg "Directory Opus 5.5 Supportdateien.\n\n")
  438.         
  439.     (if    (<> #Inst_choice 0)
  440.         (if     (askbool (prompt #Title_msg
  441.                     "Wollen Sie die folgenden Schubladen und dazugehörigen Dateien für DOpus 5.5 installieren:-\n"
  442.                     "\nButtons, Environment, Groups\nIcons, Images, Settings\n Storage und WBStartup.\n\n"
  443.                     "Diese Verzeichnisse enthalten Konfigurationsdetails,\n"
  444.                     "und dazugehörige Dateien, die für eine korrekte Funktion von Opus 5.5"
  445.                     " benötigt werden.")
  446.                 (help "Ja, tun Sie's!")
  447.                 (default 1)
  448.             )
  449.             (set #Doit 1)
  450.             (set #Doit 0)
  451.         )
  452.         (; else tell 'em what we are doing.
  453.         (message #Title_msg
  454.             "Diese Sektion installiert die folgenden Schubladen und dazugehörigen Dateien für DOpus 5.5:-\n"
  455.             "\nButtons, Environment, Groups\nIcons, Images, Settings\n Storage, System und WBStartup.\n\n"
  456.             "Diese Verzeichnisse enthalten Konfigurationsdetails,\n"
  457.             "und dazugehörige Dateien, die für eine korrekte Funktion von Opus 5.5"
  458.             " benötigt werden.")
  459.         )
  460.     )
  461.  
  462.     (if    (OR (= #Inst_choice 0) (= #Doit 1))
  463.         (
  464.         (set #Changed 1)
  465.         (set #Want_disk 1)
  466.         (get_disk)
  467.  
  468.         (if    (> (+ (database "total-mem")) 1000000)
  469.             (
  470.             (working #Title_msg
  471.                 "Installiere Supportdateien.")
  472.             (copyfiles (source (tackon #Disk1_Name "SupportA.lha")) (dest "ram:"))
  473.             (copyfiles (source (tackon #Disk1_Name "SupportB.lha")) (dest "ram:"))
  474.             (set #SRC "ram:")
  475.             )
  476.             (set #SRC #Disk1_Name)
  477.         )
  478.         (working #Title_msg
  479.             "Entpacke und installiere die Haupt-Supportkomponenten.\n\n"
  480.              "Dies dauert nicht allzu lang....")
  481.         (run (cat "lha >NIL: <NIL: -q x "#SRC"SupportA.lha DOPUSDEST:"))
  482.         (delete "ram:SupportA.lha" (safe))
  483.         (run (cat "lha >NIL: <NIL: -q x "#SRC"SupportB.lha ram:"))
  484.         (delete "ram:SupportB.lha" (safe))
  485.  
  486.         (complete 70)
  487.         
  488.         (if #Is_update ;if update then give choice
  489.              (if    (askbool (prompt #Title_msg
  490.                     "Wollen Sie Ihre alten Konfigurationen für Knöpfe,"
  491.                     " Werkzeugleisten, Menüs, Umgebung und Einstellungen"
  492.                     " mit den neuen Standardeinstellungen überschreiben?\n\n"
  493.                     "Sie können die zu installierenden Teile später wählen, aber Sie müssen"
  494.                     " Ihre Konfiguration eventuell neu einstellen, wenn Sie diese neuen Teile"
  495.                     " installieren. Alternativ können Sie auch die Datei"
  496.                     " SupportB.lha von der Installations-CD später entpacken und die"
  497.                     " spezifischen Teile manuell installieren.")
  498.                     (help "Dies erlaubt Ihnen die Wahl bestimmter Teile Ihres alten"
  499.                         " Opus-Verzeichnisses zu erneuern oder unverändert zu lassen. Wenn Sie unsicher sind, wählen Sie JA.")
  500.                 )
  501.                 (
  502.                 (copyfiles 
  503.                     (prompt #Title_msg
  504.                         "Wählen Sie die zu installierenden Knöpfe/Menüs usw.")
  505.                     (source "ram:SupportB/Buttons")
  506.                     (dest (tackon #DOpus_Dest "Buttons"))
  507.                     (all)
  508.                     (confirm)
  509.                     (help "Wählen Sie die Dateien, die Sie kopieren möchten. Im Zweifelsfall wählen Sie alle an!")
  510.                 )
  511.                 (copyfiles 
  512.                     (prompt #Title_msg
  513.                     "Wählen Sie die zu installierenden Umgebungsdateien.")
  514.                     (source "ram:SupportB/Environment")
  515.                     (dest (tackon #DOpus_Dest "Environment"))
  516.                     (all)
  517.                     (confirm)
  518.                     (help "Wählen Sie die Dateien, die Sie kopieren möchten. Im Zweifelsfall wählen Sie alle an!")
  519.                 )
  520.                 (copyfiles 
  521.                     (prompt #Title_msg
  522.                     "Wählen Sie die zu installierenden Einstellungsdateien.")
  523.                     (source "ram:SupportB/Settings")
  524.                     (dest (tackon #DOpus_Dest "Settings"))
  525.                     (all)
  526.                     (confirm)
  527.                     (help "Wählen Sie die Dateien, die Sie kopieren möchten. Im Zweifelsfall wählen Sie alle an!")
  528.                 )
  529.                 )
  530.             )
  531.             (copyfiles ; if not update just copy to dest
  532.                 (source "ram:SupportB")
  533.                 (dest #DOpus_Dest)
  534.                 (all)
  535.             )    
  536.         )
  537.  
  538.         (run "delete ram:SupportB#? all") 
  539.         (complete 90)
  540.  
  541.         )
  542.     )
  543.  
  544. )
  545.  
  546. ;
  547. ; Procedure get_dir ;
  548. ; get place to install Opus
  549. ;
  550.  
  551. (procedure get_dir
  552.  
  553.     (if #DOpus_Dest ; if we have a valid destination?
  554.         (if    (askbool (prompt #Title_msg
  555.                     "Opus 5 ist in diesem System schon in dem\n"
  556.                     "Verzeichnis \"" #DOpus_Dest"\" installiert."
  557.                     "\n\nWollen Sie diese Version in dem Verzeichnis installieren?")
  558.                 (help "Der Installer hat entdeckt, daß Sie schon eine Kopie von "
  559.                     "Opus 5 installiert haben. Sollte dies falsch sein oder "
  560.                     "Sie wollen das Update woanders installieren, wählen Sie "
  561.                     "NEIN an, ansonsten JA.")
  562.                 (default 1)
  563.             )
  564.             (set #Is_update 1) ; if user wants in same place
  565.             (set #DOpus_Dest    ; if user wants in different place
  566.                 (tackon    (askdir
  567.                     (prompt "Directory Opus 5 wird in seinem eigenen"
  568.                               " Verzeichnis auf der Festplatte installiert.\n"
  569.                               "Wo soll das Verzeichnis 'Opus 5' erzeugt werden?")
  570.                     (help @askdir-help)
  571.                     (default @default-dest)
  572.                     )
  573.                     "Opus5"
  574.                 )
  575.             )
  576.         )
  577.         (set #DOpus_Dest ; else if not an update, get a location for program
  578.             (tackon
  579.                 (askdir
  580.                     (prompt "Directory Opus 5 wird in seinem eigenen"
  581.                               " Verzeichnis auf der Festplatte installiert.\n"
  582.                               "Wo soll das Verzeichnis 'Opus 5' erzeugt werden?")
  583.                     (help @askdir-help)
  584.                     (default @default-dest)
  585.                 )
  586.                 "Opus5"
  587.             )
  588.         )
  589.     )
  590.     
  591.     
  592.     ; make DOpus drawer & icon if not there
  593.     
  594.     (if     (NOT #Is_update)
  595.             (makedir #DOpus_Dest (infos))
  596.     )
  597.     
  598.     ; at this point we have a valid destination, so we tell installer where
  599.     ; the application will end up so the exit page will be correct -- also,
  600.     ; the installation log file (if any) will be copied to the destination
  601.         
  602.     (set @default-dest #DOpus_Dest)
  603.     (makeassign "DOPUSDEST" #DOpus_Dest (safe))
  604. )
  605.  
  606. ;
  607. ; Procedure backup_old  
  608. ; if an update to same place then backup bits
  609. ; Also handle Catalogs
  610. ; Non-English installations should modify this section
  611. ;
  612.  
  613. (procedure backup_old
  614.     
  615.     ; must have had an old 'Dopus5:' installed to get here so warn.
  616.  
  617.     (message #Title_msg
  618.         "********** WARNUNG *************\n\n"
  619.         "Wenn Sie momentan eine ältere Version von Opus 5 laufen haben,"
  620.         " so kann Ihr System instabil werden, wenn"
  621.         " Sie Opusfunktionen ausführen, während Sie diese neue Version"
  622.         " installieren.\n\n"
  623.         "Wir empfehlen Ihnen, daß Sie entweder Opus 5 verlassen, bevor Sie"
  624.         " diese neue Version installieren, oder Ihren Rechner NEU STARTEN"
  625.         " direkt, nachdem die Installation durchgeführt wurde.")
  626.  
  627.     (if #Is_update 
  628.         (
  629.         (if    (askbool (prompt #Title_msg
  630.                     "Sie haben Directory Opus bereits auf Ihrer Festplatte installiert.\n\n"
  631.                     "Wollen Sie die benutzerkonfigurierten Dateien SICHERN?.\n\n"
  632.                     "Dies schließt die Verzeichnisse Buttons, Environment, FileTypes, Icons,"
  633.                     " Images, Settings, Storage, und System ein.")
  634.                 (help "Zu Ihrer eigenen Sicherhei, wählen Sie Ja.")
  635.                 (default 1)
  636.             )
  637.             (
  638.             (set #Bkup 1)
  639.             (set #New_name (cat "OLD" #Bkup))
  640.             (while     (= (exists (cat "DOPUSDEST:" #New_name) (noreq)) 2)
  641.                 (
  642.                 (set #Bkup (+ #Bkup 1))
  643.                 (set #New_name (cat "OLD" #Bkup))
  644.                 )
  645.             )
  646.             
  647.             (set #Whichfiles 
  648.                 (askoptions
  649.                     (prompt "Sichern alter Dateien nach \""#New_name"\"\n"
  650.                         "Wählen Sie bitte die zu sichernden Verzeichnisse:-")
  651.                     
  652.                     (choices
  653.                         "Buttons"    ;0
  654.                         "Environment"    ;1
  655.                         "FileTypes"    ;2
  656.                         "Icons"        ;3
  657.                         "Images"    ;4
  658.                         "Storage"    ;5
  659.                         "Settings"    ;6
  660.                     )
  661.                     (help "Dies erlaubt Ihnen die Wahl bestimmter Teile Ihres alten"
  662.                         " Opus-Verzeichnisses, die gesichert werden sollen. Wenn Sie unsicher sind, wählen Sie alle an.")
  663.                     (default 127)
  664.                 )
  665.             )
  666.  
  667.             (working "Sichere alte Dateien ins neue Verzeichnis \""#New_name"\"")
  668.             (set #New_name (tackon "DOPUSDEST:" #New_name))
  669.             (makedir #New_name)
  670.  
  671.             (if (AND (= (exists "DOPUSDEST:Buttons" (noreq)) 2) (IN #Whichfiles 0))
  672.                 (copyfiles 
  673.                 (source "DOPUSDEST:Buttons")
  674.                 (dest (tackon #New_name "Buttons"))
  675.                 (all)
  676.                 (optional force)
  677.                 )
  678.             )
  679.             (if (AND (= (exists "DOPUSDEST:Environment" (noreq)) 2) (IN #Whichfiles 1))
  680.                 (copyfiles
  681.                 (source "DOPUSDEST:Environment")
  682.                 (dest (tackon #New_name "Environment"))
  683.                 (all)
  684.                 (optional force)
  685.                 )
  686.             )
  687.             (if (AND (= (exists "DOPUSDEST:FileTypes" (noreq)) 2) (IN #Whichfiles 2))
  688.                 (copyfiles
  689.                 (source "DOPUSDEST:FileTypes")
  690.                 (dest (tackon #New_name "FileTypes"))
  691.                 (all)
  692.                 (optional force)
  693.                 )
  694.             )
  695.             (if (AND (= (exists "DOPUSDEST:Icons" (noreq)) 2) (IN #Whichfiles 3))
  696.                 (copyfiles
  697.                 (source "DOPUSDEST:Icons")
  698.                 (dest (tackon #New_name "Icons"))
  699.                 (all)
  700.                 (optional force)
  701.                 )
  702.             )
  703.             (if (AND (= (exists "DOPUSDEST:Images" (noreq)) 2)  (IN #Whichfiles 4))
  704.                 (copyfiles
  705.                 (source "DOPUSDEST:Images")
  706.                 (dest (tackon #New_name "Images"))
  707.                 (all)
  708.                 (optional force)
  709.                 )
  710.             )
  711.             (if (AND (= (exists "DOPUSDEST:Storage" (noreq)) 2)  (IN #Whichfiles 5))
  712.                 (copyfiles
  713.                 (source "DOPUSDEST:Storage")
  714.                 (dest (tackon #New_name "Storage"))
  715.                 (all)
  716.                 (optional force)
  717.                 )
  718.             )
  719.             (if (AND (= (exists "DOPUSDEST:Settings" (noreq)) 2)  (IN #Whichfiles 6))
  720.                 (copyfiles
  721.                 (source "DOPUSDEST:Settings")
  722.                 (dest (tackon #New_name "Settings"))
  723.                 (all)
  724.                 (optional force)
  725.                 )
  726.             )
  727.             )
  728.         )
  729.         ; and for non-english versions?
  730.     
  731.         (if    (= (exists "DOPUSDEST:Catalogs" (noreq)) 2)
  732.             (
  733.             (set #Bkup 1)
  734.             (set #New_name (cat "Catalogs" #Bkup))
  735.             (while     (= (exists (cat "DOPUSDEST:" #New_name) (noreq)) 2)
  736.                 (
  737.                 (set #Bkup (+ #Bkup 1))
  738.                 (set #New_name (cat "Catalogs" #Bkup))
  739.                 )
  740.             )
  741.  
  742.             (if    (askbool (prompt #Title_msg
  743.                         "Ein Verzeichnis \"Catalogs\" wurde entdeckt!"
  744.                         " Opus 5.5 benötigt neue Sprachdateien,"
  745.                         " wenn es nicht in Englisch genutzt werden soll. Diese"
  746.                         " Installation stellt Ihnen neue deutsche Catalog-Dateien"
  747.                         " zur Verfügung. Weitere Catalog-Dateien in anderen Sprachen"
  748.                               " werden im Aminet oder von lokalen Vertreibern"
  749.                               " angeboten werden.\n"
  750.                         "Ihr aktuelles Verzeichnis \"Catalogs\" kann als "
  751.                         "\""#New_name"\" gesichert werden.\n\n"
  752.                         "Wollen Sie die ALTEN Catalog-Dateien sichern?")
  753.                     (default 1)
  754.                     (help "Im Zweifelsfall wählen Sie Ja.")
  755.                 )
  756.                 (
  757.                 (rename "DOPUSDEST:Catalogs" (tackon "DOPUSDEST:" #New_name))
  758.                 (makedir "DOPUSDEST:Catalogs")
  759.                 )
  760.             )
  761.             )
  762.         )
  763.         )
  764.     )
  765. )
  766.     
  767. ;
  768. ; Procedure install_core
  769. ; install the program files and new bits
  770. ; MUST HAVE A VALID DOPUSDEST ;
  771.  
  772. (procedure install_core
  773.  
  774.     (set #Title_msg "Directory Opus 5.5 Kern-Installation.\n\n")
  775.  
  776.     (if #O_DOpus_Dest (backup_old)) ; Is re-install so give save option
  777.     
  778.     (if    (<> #Inst_choice 0)
  779.         (if    (askbool (prompt #Title_msg 
  780.                     "Wollen Sie die Hauptdateien\n"
  781.                     " von Opus 5.5 installieren?")
  782.                 (help "Ja, tun Sie's!")
  783.             )
  784.             (set #Doit 1)
  785.             (set #Doit 0)
  786.         )
  787.     )
  788.  
  789.     (if    (OR (= #Inst_choice 0) (= #Doit 1))
  790.         (
  791.         (set #Changed 1)
  792.         (set #Inst_core 1)
  793.         (set #Want_disk 1)
  794.         (get_disk)
  795.         (if    (> (+ (database "total-mem")) 1000000)
  796.             (
  797.             (working #Title_msg 
  798.                 "Kopiere Dateien.")
  799.             (copyfiles (source (tackon #Disk1_Name "Core.lha")) (dest "ram:"))
  800.             (set #SRC "ram:")
  801.             )
  802.             (set #SRC #Disk1_Name)
  803.         )
  804.         (working #Title_msg
  805.              "Entpacke und installiere die Hauptkomponenten des Programms.\n\n"
  806.              "Dies dauert so circa eine Minute....")
  807.         (run (cat "lha >NIL: <NIL: -q x "#SRC"Core.lha DOPUSDEST:"))
  808.         (delete "ram:Core.lha" (safe))
  809.  
  810.     ;
  811.     ; install non-english catalogs
  812.     ;
  813.         (if    (exists (tackon #Disk1_Name #CatalogFiles) (noreq))
  814.             (run (cat "lha >NIL: <NIL: -q x "#Disk1_Name #CatalogFiles" DOPUSDEST:"))
  815.         )
  816.  
  817.         (complete 50)
  818.     
  819.     ;
  820.     ; tidyup
  821.     ;
  822.     ; make sure update module is re-initialised
  823.  
  824.         (run "c:delete DOPUSDEST:system/update-history FORCE")
  825.  
  826.         (run "c:protect DOPUSDEST:c/DopusRT5 +p")
  827.         (run "c:protect DOPUSDEST:ARexx/#? +s")
  828.     
  829.     
  830.     ;Install the other bits
  831.         
  832.         (copyfiles 
  833.             (source "InstallOpus")
  834.             (dest #DOpus_Dest)
  835.             (infos)
  836.             (files)
  837.         )
  838.     
  839.         (copyfiles 
  840.             (source "Opus5.5:LiesMich.55")
  841.             (dest #DOpus_Dest)
  842.             (infos)
  843.             (files)
  844.         )
  845.  
  846.     ; just in case use has installed LoadDB in C:, update it
  847.  
  848.         (if (exists "C:LoadDB" (noreq))
  849.             (copyfiles 
  850.                 (source (tackon #DOpus_Dest "C/LoadDB"))
  851.                 (dest "C:")
  852.                 (files)
  853.             )
  854.         )
  855.         )
  856.     )
  857. )
  858.  
  859.  
  860.  
  861. ;
  862. ; Procedure do_startup  ;
  863. ; modify S:User-Startup
  864. ; set the script for user startup
  865.  
  866.  
  867. (procedure do_startup
  868.     
  869.     (if    (= #Inst_core 1)
  870.         (startup "DirectoryOpus 5"
  871.             (prompt    #Title_msg
  872.                 "Die folgenden Anweisungen werden zu Ihrer "
  873.                 "\"S:User-Startup\" hinzugefügt, so daß Ihr System korrekt "
  874.                 "zur Nutzung von Opus konfiguriert ist.\n\n"
  875.                 "ASSIGN DOpus5: \"" #DOpus_Dest "\"\n"
  876.                 "PATH DOpus5:c Add \n")
  877.             (help "Dies fügt Anweisungen in Ihre S:user-startup-Datei ein, "
  878.                 "damit Directory Opus korrekt funktionieren kann")
  879.             (command "ASSIGN DOpus5: \"" #DOpus_Dest "\"\n")
  880.             (command "PATH DOpus5:c Add \n")
  881.         )
  882.     )
  883. )
  884.     
  885. ;
  886. ; Procedure find_startup ;
  887. ; check what they have installed
  888. ;
  889.  
  890. (procedure find_startup
  891.  
  892.     ;check if they have our load_wb installed
  893.  
  894.     (if (exists #Dopus_prog (noreq))
  895.         (
  896.         (set #Vernum (getversion #Dopus_prog))
  897.         (set #Dop_ver (/ #Vernum 65536))
  898.         (set #Dop_rev (- #Vernum (* #Dop_ver 65536) ) )
  899.         )
  900.     )
  901.     
  902.     (set #Has_loaddb 0)
  903.     (if (exists #Loadwb (noreq))
  904.         ( ; yes
  905.         (set #Vernum (getversion #Loadwb))
  906.         (set #Wb_ver (/ #Vernum 65536))
  907.         (set #Wb_rev (- #Vernum (* #Wb_ver 65536) ) )
  908.         (if (>= #Wb_ver 42) ; should be ours
  909.             (set #Has_loaddb 1) ; yes
  910.             (set #Has_loaddb 0) ; no
  911.         )
  912.         )
  913.     )
  914.     
  915.     (if (exists #Loadwb_old (noreq))
  916.         ( ; yes
  917.         (set #Has_loadwb_old 1)
  918.         (set #Vernum (getversion #Loadwb_old))
  919.         (set #Op_ver (/ #Vernum 65536))
  920.         (set #Op_rev (- #Vernum (* #Op_ver 65536) ) )
  921.         )
  922.         (set #Has_loadwb_old 0) ;no
  923.     )
  924. )
  925.  
  926.  
  927. ;
  928. ; Procedure remove_wb  ;
  929. ;
  930.  
  931. (procedure remove_wb
  932.  
  933.     ; does user have loadwb_old or loaddb already installed 
  934.  
  935.     (if (= #Has_loadwb_old 1) ; if loadwb_old exhists
  936.         (copyfiles
  937.             (source "C:LoadWB_old")
  938.             (dest "C:")
  939.             (newname "LoadWB")
  940.         )
  941.     )
  942. )
  943.  
  944. ;
  945. ; Procedure startup_options ;
  946. ;
  947.  
  948. (procedure startup_options
  949.  
  950.     (set #Title_msg "Directory Opus 5 Startoptionen.\n\n")
  951.     (if #DOpus_Dest
  952.         (
  953.         (find_startup)
  954.     
  955.         (if    ( = #Inst_choice 1)
  956.             (if     (askbool (prompt #Title_msg
  957.                         "Wollen Sie die Startoptionen\n"
  958.                         " von Opus 5.5 ändern?")
  959.                     (help "Im Zweifelsfall wählen Sie \"Ja\"")
  960.                 )
  961.                 (set #Doit 1)
  962.                 (set #Doit 0)
  963.             )
  964.         )
  965.  
  966.         (if    (OR (<> #Inst_choice 1) (= #Doit 1))
  967.             (
  968.             (set #Curr_choice 0)
  969.                 
  970.             ;Get the users startup choices
  971.             (set #Mode (askchoice
  972.                 (prompt #Title_msg
  973.                     "Opus 5 kann automatisch beim Booten Ihres Rechners"
  974.                     " gestartet werden. Welchen Start wünschen Sie?")
  975.                 (help    @askchoice-help    )
  976.                 (choices "Opus 5 als Workbenchersatz!" ;0
  977.                          "Opus 5 beim Booten starten"            ;1
  978.                          "Opus 5 verborgen starten"        ;2
  979.                          "Opus 5 beim Booten nicht starten"  ;3
  980.                          "Keine Änderung")                ;4
  981.                 (default #Curr_choice)
  982.                 )
  983.             )
  984.     
  985.             (if (<> #Mode 4) (set #Changed 1))
  986.  
  987.             ; use as wb replacement
  988.             (if (= #Mode 0)
  989.                 (
  990.                 ; does user have loadwb_old or loaddb already installed 
  991.                 (if (= #Has_loadwb_old 0) ; if loadwb_old not exhist
  992.                     (if (= #Has_loaddb 0) ; then is  loadwb actually loaddb
  993.                         (if (exists #Loadwb (noreq)) ; no. Good then does loadwb exhist?
  994.                             (rename "c:LoadWB" "c:LoadWB_old") ; then rename it
  995.                         )
  996.                     )
  997.                 )
  998.     
  999.                 ; then copy our loaddb as loadWB 
  1000.                 (copyfiles
  1001.                     (source (tackon #DOpus_Dest "c/LoadDB"))
  1002.                     (dest "C:")
  1003.                     (newname "LoadWB")
  1004.                 )
  1005.                 ) ;else remove the loadDB
  1006.                 (if (AND (<> #Mode 4) (= #Has_loaddb 1)) (remove_wb))
  1007.  
  1008.             )
  1009.         
  1010.             
  1011.  
  1012.                 
  1013.             ; start on boot normal
  1014.             (if (= #Mode 1)
  1015.                 (
  1016.                 (copyfiles
  1017.                     (source (tackon #DOpus_Dest "wbstartup/Opus5_Startup"))
  1018.                     (dest "SYS:WBStartup")
  1019.                     (infos)
  1020.                 )
  1021.         
  1022.                 (tooltype
  1023.                     (dest "SYS:WBStartup/Opus5_Startup")
  1024.                     (settooltype "CX_POPUP" "YES")
  1025.                 )
  1026.                 )
  1027.             )
  1028.         
  1029.         
  1030.             ; start on iconified normal
  1031.             (if (= #Mode 2)
  1032.                 (
  1033.                 (copyfiles
  1034.                     (source (tackon #DOpus_Dest "wbstartup/Opus5_Startup"))
  1035.                     (dest "SYS:WBStartup")
  1036.                     (infos)
  1037.                 )
  1038.         
  1039.                 (tooltype
  1040.                     (dest "SYS:WBStartup/Opus5_Startup")
  1041.                     (settooltype "CX_POPUP" "NO")
  1042.                 )
  1043.                 )
  1044.             )
  1045.             )
  1046.         )
  1047.         )
  1048.         (message #Title_msg
  1049.             "Hoppla, das geht nicht!\nDirectory Opus ist noch nicht installiert!")
  1050.     )
  1051.  
  1052. )
  1053.  
  1054. ; Procedure install_arcdir
  1055. ; Part of Script to install ArcDir.dopus5 1.0.
  1056. ; Developed by Edmund Vermeulen (edmundv@grafix.xs4all.nl).
  1057. ;
  1058.  
  1059. (procedure install_arcdir
  1060.  
  1061.     (set #Title_msg "ARexx ArcDir Installation.\n\n")
  1062.     (if    (askbool (prompt #Title_msg 
  1063.                 "ArcDir wurde entwickelt von Edmund Vermeulen.\n"
  1064.                 "Es erlaubt Ihnen den einfachsten Umgang mit LHA, LZH,"
  1065.                 " und LZX-Dateien mittels Directory Opus 5\n"
  1066.                 "\n WÄRMSTENS EMPFOHLEN -Installieren Sie es!\n\n"
  1067.                 "Wollen Sie das ARexx ArcDir-Archiv in Ihrem"
  1068.                 " Opus 5-Verzeichnis installieren?\n")
  1069.             (help "Ja, tun Sie's! Es ist großartig!")
  1070.         )
  1071.         (
  1072.         (set #Changed 1)
  1073.         (set #Want_disk 2)
  1074.         (get_disk)
  1075.         (if    (> (+ (database "total-mem")) 1000000)
  1076.             (
  1077.             (working #Title_msg 
  1078.                 "Kopiere Dateien.")
  1079.             (copyfiles (source (tackon #Disk2_Name "ArcDir10.lha")) (dest "ram:"))
  1080.             (set #SRC "ram:")
  1081.             )
  1082.             (set #SRC #Disk2_Name)
  1083.         )
  1084.         (working #Title_msg 
  1085.             "Entpacke die Arcdir-Installation.\n\n"
  1086.             "Das wird schneller sein...")
  1087.         (run (cat "lha >NIL: <NIL: -q x "#SRC"ArcDir10.lha ram:"))
  1088.         (delete "ram:ArcDir10.lha" (safe))
  1089.  
  1090.         (run "cd ram:arcdir")
  1091.  
  1092.     ; delete old stuff
  1093.  
  1094.     
  1095.         (if    (= (getversion "DOPUSDEST:ARexx/LhADir.dopus5") 65536)
  1096.             (message #Title_msg
  1097.                 "Version 1.0 von LhADir.dopus5 entdeckt!\n\n"
  1098.                 "Bitte beachten Sie, daß ArcDir.dopus5 keinerlei Veränderungen "
  1099.                 "an der Werkzeugleiste oder anderen Knöpfen in Opus benötigt.\n\n"
  1100.                 "Sie sollten alle Verweise auf LhADir.dopus5 entfernen. Dies geschieht "
  1101.                 "üblicherweise durch das Kopieren der Standard-Werkzeugleiste über "
  1102.                 "Ihre alte Werkzeugeleiste."
  1103.               )
  1104.         )
  1105.     
  1106.         (if    (= (exists "DOPUSDEST:ARexx/LhADir.dopus5" (noreq)) 1)
  1107.             (if    (askbool (prompt #Title_msg
  1108.                         "LhADir.dopus5 entdeckt.\n\n"
  1109.                         "LhADir wurde durch ArcDir ersetzt und wird nicht mehr "
  1110.                         "benötigt. Sind Sie damit einverstanden, es zu löschen?")
  1111.                     (help "Wählen Sie 'Ja', um LhADir.dopus5 und dazugehörige Dateien "
  1112.                     "aus Ihrem System zu löschen oder 'Nein', um diese dort zu belassen.")
  1113.                 )
  1114.                 ( ;yes
  1115.                 (delete "DOPUSDEST:ARexx/LhADir.dopus5")
  1116.                 (delete "DOPUSDEST:ARexx/LhADir-handler")
  1117.                 (delete "DOPUSDEST:ARexx/NewLhA.dopus5")
  1118.                 (delete "DOPUSDEST:C/LhADirList")
  1119.                 (delete "Locale:Catalogs/nederlands/LhADir.catalog")
  1120.                 (delete "Locale:Catalogs/deutsch/LhADir.catalog")
  1121.                 (delete "Locale:Catalogs/français/LhADir.catalog")
  1122.                 (delete "Locale:Catalogs/norsk/LhADir.catalog")
  1123.                 (delete "DOPUSDEST:Buttons/LhADir Buttons")
  1124.                 (delete "DOPUSDEST:Buttons/toolbar_LhADir")
  1125.                 )
  1126.             )
  1127.         )
  1128.     
  1129.     ; ask questions first, copy files later
  1130.     
  1131.         (set #Storeold
  1132.             (if    (askbool (prompt #Title_msg
  1133.                         "Alte Dateitypen für LHA and LZX werden überschrieben. "
  1134.                         "Wollen Sie eine sichere Kopie von diesen im Verzeichnis "
  1135.                         "'DOpus5:Storage' anlegen?\n\n"
  1136.                         "Im Falle einer Deinstallation werden diese Dateien reinstalliert.")
  1137.                     (help "Wählen Sie 'Ja', um die Dateien 'LHA archive' und 'LZX archive' "
  1138.                         "aus dem Verzeichnis 'DOpus5:Filetypes' ins Verzeichnis 'DOpus5:Storage' "
  1139.                         "zu kopieren. Wählen Sie 'Nein', um die aktuellen (Standard-) Dateitypen für "
  1140.                         "LHA und LZX im Verzeichnis 'Storage' beizubehalten.\n\n"
  1141.                         "Bei einer Deinstallation werden diese Dateitypen aus dem "
  1142.                         "Verzeichnis 'Storage' ins Verzeichnis 'Filetypes' reinstalliert. "
  1143.                         "Sie können eine Deinstallation durch erneuten Aufruf dieses "
  1144.                         "Installationsskriptes durchführen.")
  1145.                 )
  1146.             )
  1147.         )
  1148.         
  1149.         (set #how
  1150.             (+
  1151.                 (askchoice
  1152.                 (prompt #Title_msg
  1153.                     "Wie wünschen Sie, daß ein Verzeichnis aufgelistet wird, wenn Sie "
  1154.                     "es doppelklicken?")
  1155.                 (help @askchoice-help)
  1156.                 (choices
  1157.                 (cat #proprender "In einen neuen Lister (Browse).")
  1158.                 "Im selben Lister (GetDir)."
  1159.                 )
  1160.                 )
  1161.                 (* 2
  1162.                 (askchoice
  1163.                     (prompt #Title_msg
  1164.                         "Was soll geschehen, wenn Sie ein Archiv in einem anderen "
  1165.                         "Lister ablegen?")
  1166.                     (help @askchoice-help)
  1167.                     (choices
  1168.                         (cat #proprender "Entpacken (mit LhA/LZX).")
  1169.                             "Auflisten (mit ArcDir)."
  1170.                     )
  1171.                 )
  1172.                 )
  1173.             )    
  1174.         )
  1175.  
  1176.         (set #Language
  1177.             (if
  1178.                 (= (exists "ENV:Language" (noreq)) 1)
  1179.                 (getenv "Language")
  1180.                     ""
  1181.                 )
  1182.         )
  1183.  
  1184.         (set #Catalogs
  1185.             (askoptions
  1186.                 (prompt #Title_msg
  1187.                     "Welche Catalog-Dateien wollen Sie installieren?\n"
  1188.                     "(English ist eingebaut.)")
  1189.                 (help @askoptions-help)
  1190.                 (choices (cat #proprender "Nederlands") "Deutsch" "Français" "Norsk")
  1191.                 (default 
  1192.                     (+
  1193.                     (= #Language "nederlands")
  1194.                     (* 2 (= #Language "deutsch"))
  1195.                     (* 4 (= #Language "français"))
  1196.                     (* 8 (= #Language "norsk"))
  1197.                     )
  1198.                 )
  1199.                 )
  1200.         )
  1201.         
  1202.         
  1203.     ; copy the files
  1204.     
  1205.         (copyfiles
  1206.             (source "ram:ArcDir/ARexx")
  1207.             (dest "DOPUSDEST:ARexx")
  1208.             (pattern "#?")
  1209.             (files)
  1210.         )
  1211.         (copyfiles
  1212.             (source "ram:ArcDir/C")
  1213.             (dest "DOPUSDEST:C")
  1214.             (pattern "#?")
  1215.             (files)
  1216.         )
  1217.     
  1218.         (set #Storedir
  1219.             (if (= (exists "DOPUSDEST:Storage/Filetypes" (noreq)) 2)
  1220.                 ("DOPUSDEST:Storage/Filetypes")
  1221.                 ("DOPUSDEST:Storage")
  1222.             )
  1223.         )
  1224.         (set #N 0)
  1225.         (while
  1226.             (set #Arctype (select #N "LHA" "LZX" ""))
  1227.             (
  1228.             (if #Storeold
  1229.                 (copyfiles
  1230.                     (source (cat "DOPUSDEST:Filetypes/" #Arctype " archive"))
  1231.                     (dest #Storedir)
  1232.                 )
  1233.             )
  1234.             (copyfiles
  1235.                 (source    (select    #how
  1236.                     (cat "ram:ArcDir/Filetypes/" #Arctype " archive")
  1237.                     (cat "ram:ArcDir/Storage/Filetypes/" #Arctype " archive_GetDir")
  1238.                     (cat "ram:ArcDir/Storage/Filetypes/" #Arctype " archive_Browse&DnD")
  1239.                     (cat "ram:ArcDir/Storage/Filetypes/" #Arctype " archive_GetDir&DnD")
  1240.                     )
  1241.                 )
  1242.                 (dest "DOPUSDEST:Filetypes")
  1243.                 (newname (cat #Arctype " archive"))
  1244.             )
  1245.             (set #N (+ #N 1))
  1246.             )
  1247.         )
  1248.     
  1249.         (set #N 0)
  1250.         (while
  1251.             (set #Thiscat (select #N "nederlands" "deutsch" "français" "norsk" ""))
  1252.             (
  1253.             (if (in #Catalogs #N)
  1254.                 (copyfiles
  1255.                     (source (cat "ram:ArcDir/Locale/Catalogs/" #Thiscat "/ArcDir.catalog"))
  1256.                     (dest (cat "LOCALE:Catalogs/" #Thiscat))
  1257.                 )
  1258.             )
  1259.             (set #N (+ #N 1))
  1260.             )
  1261.         )
  1262.                 
  1263.     ; Done
  1264.         
  1265.         (message #Title_msg
  1266.             "Installation durchgeführt!\n\n"
  1267.             "Um ArcDir.dopus5 nutzen zu können, muß ARexx aktiviert sein "
  1268.             "durch Start des RexxMast-Programms aus dem Systemverzeichnis.\n\n"
  1269.             "Sie können ArcDir deinstallieren durch Aufruf des Installationskriptes"
  1270.             " aus dem ARCDir-Archiv auf der Opus 5.5-CD."
  1271.         )
  1272.     
  1273.         (run "cd ram:")
  1274.         (run "delete ram:ArcDir#? all")
  1275.         )
  1276.     )
  1277. )
  1278.  
  1279. ;
  1280. ; Procedure install_docs
  1281. ;
  1282.  
  1283. (procedure install_docs
  1284.  
  1285.     (set #Title_msg "Directory Opus 5.5 Handbuch-Installation.\n\n")
  1286.      (set #HB_choice
  1287.       (askchoice
  1288.         (prompt #Title_msg
  1289.             "Bitte wählen Sie aus:-")
  1290.         (help     "PowerGuide-Handbuch installieren\n"
  1291.               "Installiert das Handbuch im Format von"
  1292.                 " PowerGuide auf Ihrer Festplatte im Verzeichnis"
  1293.                 " von Opus 5.5. Das Handbuch im Format von PowerGuide"
  1294.                 " bietet gegenüber herkömmlichen Guide_Dateien den"
  1295.                 " den Vorteil größerer Übersichtlichkeit durch"
  1296.                 " eingebundene Grafiken und eine Suchfunktion."
  1297.                 " PowerGuide wird automatisch mitinstalliert und"
  1298.                 " befindet sich im Verzeichnis des Handbuchs.\n\n"
  1299.             "AmigaGuide-Handbuch installieren\n"
  1300.               "Installiert das Handbuch im Format von AmigaGuide auf"
  1301.                 " Ihrer Festplatte im Verzeichnis von Opus 5.5. Dieses"
  1302.                 " Handbuch wird mit dem Standardprogramm Multiview"
  1303.                 " dargestellt.\n\n"
  1304.                "Beide Handbücher installieren\n"
  1305.                 "Installiert beide Handbücher in beiden Formaten.\n\n"
  1306.                "Kein Handbuch installieren\n"
  1307.                 "Es wird kein Handbuch installiert. Sie können aber die"
  1308.                 " entpsprechenden Dateien später von Hand entpacken"
  1309.                 " (auch wenn wir Ihnen diese Vorgehensweise nicht"
  1310.                 " empfehlen).")
  1311.         (choices
  1312.             "PowerGuide-Handbuch installieren "    ; 0
  1313.             "AmigaGuide-Handbuch installieren "    ; 1 
  1314.             "Beide Handbücher installieren "    ; 2 
  1315.             "Kein Handbuch installieren ")    ; 3
  1316.         (default 2)
  1317.      )
  1318.     )
  1319.  
  1320.         (set #Changed 1)
  1321.         (set #Want_disk 1)
  1322.         (get_disk)
  1323.  
  1324.      (if (= #HB_choice 0)
  1325.           (
  1326.         (if    (> (+ (database "total-mem")) 1000000)
  1327.             (
  1328.             (working #Title_msg
  1329.                 "Kopiere Dateien.")
  1330.             (copyfiles (source (tackon #Disk1_Name "Bilder.lha")) (dest "ram:"))
  1331.             (copyfiles (source (tackon #Disk1_Name "Handbuch.lha")) (dest "ram:"))
  1332.             (set #SRC "ram:")
  1333.             )
  1334.             (set #SRC #Disk1_Name)
  1335.         )
  1336.         (working #Title_msg
  1337.              "Entpacke und installiere das PowerGuide-Handbuch.\n\n"
  1338.              "Dies dauert ein Momentchen....")
  1339.         (run (cat "lha >NIL: <NIL: -q x "#SRC"Handbuch.lha DOPUSDEST:"))
  1340.         (delete "ram:Handbuch.lha" (safe))
  1341.          (run (cat "lha >NIL: <NIL: -q x "#SRC"Bilder.lha DOPUSDEST:Handbuch/"))
  1342.         (delete "ram:Bilder.lha" (safe))
  1343.           )
  1344.      )
  1345.  
  1346.      (if (= #HB_choice 1)
  1347.           (
  1348.         (if    (> (+ (database "total-mem")) 1000000)
  1349.             (
  1350.             (working #Title_msg
  1351.                 "Kopiere Dateien.")
  1352.             (copyfiles (source (tackon #Disk1_Name "Bilder.lha")) (dest "ram:"))
  1353.             (copyfiles (source (tackon #Disk1_Name "HandbuchMV.lha")) (dest "ram:"))
  1354.             (set #SRC "ram:")
  1355.             )
  1356.             (set #SRC #Disk1_Name)
  1357.         )
  1358.         (working #Title_msg
  1359.              "Entpacke und installiere das AmigaGuide-Handbuch.\n\n"
  1360.              "Dies dauert ein Momentchen....")
  1361.         (run (cat "lha >NIL: <NIL: -q x "#SRC"HandbuchMV.lha DOPUSDEST:"))
  1362.         (delete "ram:HandbuchMV.lha" (safe))
  1363.          (run (cat "lha >NIL: <NIL: -q x "#SRC"Bilder.lha DOPUSDEST:Handbuch_MV/"))
  1364.         (delete "ram:Bilder.lha" (safe))
  1365.           )
  1366.      )
  1367.  
  1368.      (if (= #HB_choice 2)
  1369.           (
  1370.         (if    (> (+ (database "total-mem")) 1000000)
  1371.             (
  1372.             (working #Title_msg
  1373.                 "Kopiere Dateien.")
  1374.             (copyfiles (source (tackon #Disk1_Name "Bilder.lha")) (dest "ram:"))
  1375.             (copyfiles (source (tackon #Disk1_Name "Handbuch.lha")) (dest "ram:"))
  1376.             (copyfiles (source (tackon #Disk1_Name "HandbuchMV.lha")) (dest "ram:"))
  1377.             (set #SRC "ram:")
  1378.             )
  1379.             (set #SRC #Disk1_Name)
  1380.         )
  1381.         (working #Title_msg
  1382.              "Entpacke und installiere beide Handbücher.\n\n"
  1383.              "Dies dauert ein Momentchen....")
  1384.         (run (cat "lha >NIL: <NIL: -q x "#SRC"Handbuch.lha DOPUSDEST:"))
  1385.         (delete "ram:Handbuch.lha" (safe))
  1386.         (run (cat "lha >NIL: <NIL: -q x "#SRC"HandbuchMV.lha DOPUSDEST:"))
  1387.         (delete "ram:HandbuchMV.lha" (safe))
  1388.          (run (cat "lha >NIL: <NIL: -q x "#SRC"Bilder.lha DOPUSDEST:Handbuch/"))
  1389.          (run (cat "lha >NIL: <NIL: -q x "#SRC"Bilder.lha DOPUSDEST:Handbuch_MV/"))
  1390.         (delete "ram:Bilder.lha" (safe))
  1391.           )
  1392.      )
  1393.  
  1394.      (if (= #HB_choice 3)
  1395.         (message #Title_msg
  1396.             "Sie haben kein Handbuch installiert. Sie können dies aber"
  1397.                " später noch nachholen, indem Sie dieses"
  1398.                " Installationsprogramm erneut starten."
  1399.           )
  1400.      )
  1401.  
  1402. )
  1403.  
  1404. ;
  1405. ; Procedure install_complete ;
  1406. ;
  1407.  
  1408. (procedure install_complete
  1409.  
  1410.     (get_dir)
  1411.     (signal_opus)
  1412.     (install_core)
  1413.     (install_support)
  1414.      (install_docs)
  1415.     (install_arcdir)
  1416.     (install_arexx)    
  1417.     (install_mwbextras)
  1418.     (startup_options)
  1419.     (do_startup)
  1420. )
  1421.  
  1422.  
  1423. ;
  1424. ; Real not procedure at last! ;
  1425. ;
  1426.  
  1427.     (set #Title_msg "Directory Opus 5.5 alternative Installation.\n\n")
  1428.  
  1429.         (message #Title_msg
  1430.                "Dies ist die alternative Installationsroutine für Systeme,"
  1431.                " deren CD-ROM-Filesystem Probleme mit dem originalen"
  1432.                " Installationsskript bereitet.\n\n"
  1433.                "Beachten Sie bitte, daß für eine korrekte Funktion dieses"
  1434.                " Installationsskriptes das Programm LHA im Befehlspfad"
  1435.                " Ihres Rechners (z.B. im Verzeichnis C:) vorhanden sein muß.\n\n"
  1436.                "LHA kann aus lizenzrechtlichen Gründen NICHT mitgeliefert"
  1437.                " werden, Sie finden es aber u.a. im Aminet.")
  1438.  
  1439.           (check_lha)
  1440.  
  1441. (while    (
  1442.     (set #Title_msg "Directory Opus 5 Installation.\n\n")
  1443.      (set #Inst_choice
  1444.       (askchoice
  1445.         (prompt #Title_msg
  1446.             "Bitte wählen Sie aus:-")
  1447.         (help     "Opus 5.5 installieren\n"
  1448.               "Installiert oder updated Opus 5.5 auf"
  1449.              " Ihrer Festplatte, einschließlich Programm-"
  1450.              " und Support-Dateien plus Knopfbänke,"
  1451.              " Dateitypen, Umgebung usw. WICHTIG: "
  1452.              "Alle Elemente der alten Konfiguration werden zuerst gesichert.\n\n"
  1453.             "Opus 5.5 installieren - benutzerdefiniert\n"
  1454.               "Installiert Opus 5.5 wie oben, erlaubt Ihnen aber"
  1455.              " die Wahl der zu installierenden Teile.\n\n"
  1456.             "ARexx ArcDir installieren\n "    
  1457.              "Installiert ArcDir\n\n"
  1458.             "MagicWB-Extras installieren\n"    
  1459.              "Installiert das MagicWorkbench-Archive von"
  1460.              " Bildern, Piktogrammen, Knöpfen und anderen Dateien,"
  1461.              " wie von Trevor Morris und Leo Davidson zur Verfügung gestellt.\n\n"
  1462.             "Opus 5.5 Startoptionen ändern"
  1463.              "Erlaubt Ihnen die Änderung der Startoptionen von Opus 5.")
  1464.         (choices
  1465.             "Opus 5.5 installieren oder updaten "    ; 0
  1466.             "Opus 5.5 installieren - benutzerdefiniert "    ; 1 
  1467.             "Opus 5.5 Startoptionen ändern "    ; 2 only if 5.5 installed
  1468.             "Fertig ")                ; 3
  1469.         (default 3)
  1470.      )
  1471.     )
  1472.     (<> #Inst_choice 3)
  1473.     )
  1474.     (select #Inst_choice
  1475.         (install_complete)    ;0
  1476.         (install_complete)    ;1
  1477.         (startup_options)    ;2
  1478.     )
  1479. )
  1480.  
  1481. (if    (= #Inst_core 1)
  1482.     (message #Title_msg
  1483.         "Directory Opus 5 registrieren \n"
  1484.         "-----------------------------\n"
  1485.         "Um Ihre wertvolle Investition in Opus 5 zu schützen und "
  1486.         "die Installation zu komplettieren, sollten Sie"
  1487.         " jetzt Opus mit Ihren persönlichen Daten und der Seriennummer "
  1488.         " der Installations-CD registrieren.\n\n"
  1489.         "Dies wäre auch ein guter Moment, die Registrierkarte"
  1490.         " auszufüllen und an Ihren Vertreiber zurückzusenden."
  1491.         " Technische Unterstützung und Garantie wird nur"
  1492.         " gewährt, wenn eine gültige Registrierung beim Vertrieb"
  1493.         " vorliegt.")
  1494. )
  1495.  
  1496. (if    (= #Changed 1)
  1497.     (message #Title_msg
  1498.         "Directory Opus ist jetzt installiert.\n\n"
  1499.         "Wir empfehlen Ihnen, das Installationsskript bis zum Ende durchzuführen,"
  1500.         " die CD zu entfernen und Ihren Rechner NEU ZU STARTEN.")
  1501. )
  1502.  
  1503. ;
  1504. ;Please please ReadMe 
  1505. ;
  1506.  
  1507. (if    (= #Changed 1)
  1508.     (if    (askbool (prompt #Title_msg
  1509.                 "Alle Dinge ändern sich, einschließlich Software.\n\n"
  1510.                 "Weitere Änderungen sind in der Datei 'LiesMich'"
  1511.                 " auf der Installations-CD festgehalten.\n\n"
  1512.                 "Wollen Sie diese Datei jetzt lesen?\n\n")
  1513.             (help "Na los, lesen Sie sie schon.")
  1514.         )
  1515.         (if (> (run "Sys:Utilities/MultiView DOPUSDEST:LiesMich.55") 0)
  1516.             (if (> (run "Sys:Utilities/AmigaGuide DOPUSDEST:LiesMich.55") 0)
  1517.                 (if (> (run "More DOPUSDEST:LiesMich.55") 0)
  1518.                     (
  1519.                     (set #Want_disk 1)
  1520.                     (get_disk)
  1521.                     (run "Opus5.5:More DOPUSDEST:LiesMich.55")
  1522.                     )
  1523.                 )
  1524.             )
  1525.         )
  1526.     )
  1527. )
  1528.  
  1529. (complete 100)
  1530.  
  1531. (exit "Directory Opus 5.5 Installation beendet!")
  1532.  
  1533.  
  1534.